Milking box with a robotic attacher having a three-dimensional range of motion

ABSTRACT

In certain embodiments, a robotic attacher comprises a main arm, a supplemental arm coupled to the main arm, and a plurality of actuators operable to move the main arm and supplemental arm in response to signals from a controller. The actuators comprise first, second, and third actuators operable to move the main arm in x-, y-, and z-directions, respectively. The actuators further comprise fourth and fifth actuators operable to pivot a gripping portion of the supplemental arm in a first z-direction and a second z-direction, respectively, with the second z-direction being opposite the first z-direction.

RELATED APPLICATION

This application is a continuation-in-part application of pending U.S.patent application Ser. No. 13/095,983 entitled “Milking Box WithRobotic Attacher”, filed Apr. 28, 2011.

TECHNICAL FIELD

This invention relates generally to dairy farming and more particularlyto a milking box with a robotic attacher having a three-dimensionalrange of motion.

BACKGROUND OF THE INVENTION

Over time, the size and complexity of dairy milking operations hasincreased. Accordingly, the need for efficient and scalable systems andmethods that support dairy milking operations has also increased.Systems and methods supporting dairy milking operations, however, haveproven inadequate in various respects.

SUMMARY OF THE INVENTION

According to embodiments of the present disclosure, disadvantages andproblems associated with previous systems supporting dairy milkingoperations may be reduced or eliminated.

In certain embodiments, a robotic attacher comprises a main arm, asupplemental arm coupled to the main arm, and a plurality of actuatorsoperable to move the main arm and supplemental arm in response tosignals from a controller. The actuators comprise first, second, andthird actuators operable to move the main arm in x-, y-, andz-directions, respectively. The actuators further comprise fourth andfifth actuators operable to pivot a gripping portion of the supplementalarm in a first z-direction and a second z-direction, respectively, withthe second z-direction being opposite the first z-direction.

Particular embodiments of the present disclosure may provide one or moretechnical advantages. For example, in certain embodiments, the system ofthe present disclosure includes a robotic attacher positioned to therear of a milking box housing a dairy cow being milked rather than tothe side of the milking box, as in certain conventional systems. Therobotic attacher being positioned to the rear of a milking box may allowtwo milking boxes to be positioned side-by-side such that the roboticattacher may attach milking equipment to dairy cows located in each ofthe milking boxes. As a result, the cost associated with the milkingboxes may be less that that of certain conventional milking boxes, whichmay require a milking robot for each milking box. Additionally, therobotic attacher being positioned to the rear of a milking box may allowfor gates to be positioned on each side of the milking box. As a result,a dairy cow may enter or exit the milking box on either side, allowingfor increased sorting capabilities.

Certain embodiments of the present disclosure may include some, all, ornone of the above advantages. One or more other technical advantages maybe readily apparent to those skilled in the art from the figures,descriptions, and claims included herein.

BRIEF DESCRIPTION OF THE DRAWINGS

To provide a more complete understanding of the present invention andthe features and advantages thereof, reference is made to the followingdescription taken in conjunction with the accompanying drawings, inwhich:

FIGS. 1A-1B illustrate example configurations of an enclosure 100 inwhich one or more milking boxes are installed, according to certainembodiments of the present disclosure;

FIG. 2 illustrates an example controller that may be used to control oneor more components of the example milking box depicted in FIG. 1,according to certain embodiments of the present disclosure;

FIG. 3 illustrates a detailed perspective view of the example milkingbox depicted in FIG. 1, according to certain embodiments of the presentdisclosure;

FIG. 4A illustrates a detailed perspective view of the example roboticattacher depicted in FIG. 3, according to certain embodiments of thepresent disclosure;

FIG. 4B illustrates an example of a side plan view of a camera coupledto the robotic attacher depicted in FIG. 3, according to certainembodiments of the present disclosure;

FIG. 4C illustrates an example of a front plan view of a camera coupledto the robotic attacher depicted in FIG. 3, according to certainembodiments of the present disclosure;

FIG. 5A illustrates an example method for milking a dairy cow using theexample milking box depicted in FIGS. 1-4, according to certainembodiments of the present disclosure;

FIG. 5B illustrates an example of a sequence for attaching teat cups tothe teats of a dairy cow, according to certain embodiments of thepresent disclosure;

FIG. 6 illustrates an example method for installation of the examplemilking box depicted in FIGS. 1-4, according to certain embodiments ofthe present disclosure;

FIG. 7A-7B illustrate an example of an actuator system for facilitatingmovements of the robotic attacher depicted in FIG. 3, according tocertain embodiments of the present disclosure;

FIG. 8A-8D illustrate an example of a pivot system for facilitatingpivot movements of the robotic attacher depicted in FIG. 3, according tocertain embodiments of the present disclosure;

FIGS. 9A-9B illustrates an example of a rotating assembly forfacilitating rotational movements of the robotic attacher depicted inFIG. 3, according to certain embodiments of the present disclosure;

FIGS. 10A-10B illustrate an example of a gripping system forfacilitating gripping movements by the robotic attacher depicted in FIG.3, according to certain embodiments of the present disclosure;

FIGS. 11A-11D illustrate examples of the feed bowl and backplane of themilking box depicted in FIG. 3, according to certain embodiments of thepresent disclosure;

FIGS. 12A-12B illustrate examples of areas for storing cups within themilking box depicted in FIG. 3, according to certain embodiments of thepresent disclosure;

FIG. 13 illustrates an example of a hose lift assembly within themilking box depicted in FIG. 3, according to certain embodiments of thepresent disclosure; and

FIGS. 14A-14B illustrate an example of a cleansing system for cleaningmilking equipment associated with the milking box depicted in FIG. 3,according to certain embodiments of the present disclosure.

DETAILED DESCRIPTION OF THE DRAWINGS

FIGS. 1A-1B illustrate example configurations of an enclosure 100 inwhich one or more milking boxes 120 are installed, according to certainembodiments of the present disclosure. Enclosure 100 may be divided intoa number of regions 110 (e.g., regions 110 a and 110 b), and each region110 may include resting stalls, feeding troughs, walking paths, and/orother structure suitable for housing dairy livestock. Although thepresent disclosure contemplates enclosure 100 as housing any suitabledairy livestock (e.g., dairy cows, goats, sheep, water buffalo, etc.),the remainder of this description is detailed with respect to dairycows.

Each milking box 120 may include a stall portion 122 configured to housea dairy cow being milked. The stall portion 122 of each milking box 120may be defined by a number of walls 124, each of which may each beconstructed from any suitable materials arranged in any suitableconfiguration operable to maintain a dairy cow within stall portion 122during milking. In certain embodiments, stall portion 122 of milking box120 may include walls 124 a, 124 b, 124 c, and 124 d. For purposes ofillustration, wall 124 a may be designated as the front of milking box120 such that the head of a dairy cow being milked would be facing wall124 a. Wall 124 c may be positioned opposite wall 124 a and may bedesignated as the rear of milking box 120. Walls 124 b and 124 d mayeach form a side extending between the front and rear of milking box120. Walls 124 a, 124 b, 124 c, and 124 d may be spaced apart a suitabledistance to ensure the comfort of the dairy cow within stall portion122.

Walls 124 b and/or 124 d may comprise one or more gates 126. In certainembodiments, wall 124 b and/or wall 124 d may comprise an entry gate 126a and an exit gate 126 b. A dairy cow may enter milking box 120 throughan opened entry gate 126 a and exit milking box 120 through an openedexit gate 126 b. Closing gates 126 may maintain the dairy cow withinmilking box 120 during milking, while opening one or more gates 126 mayallow the dairy cow to exit milking box 120. In certain embodiments,gates 126 may each be coupled to a corresponding actuator such that thegates 126 may be automatically opened and/or closed. For example, theactuators corresponding to gates 126 may each be configured tocommunicate (e.g., via wireless or wireline communication) with acontroller 200, depicted in detail in FIG. 2.

Controller 200 may include one or more computer systems at one or morelocations. Examples of computer systems may include a personal computer,workstation, network computer, kiosk, wireless data port, personal dataassistant (PDA), one or more processors within these or other devices,or any other suitable device for receiving, processing, storing, andcommunicating data. In short, controller 200 may include any suitablecombination of software, firmware, and hardware. Controller 200 mayinclude any appropriate interface 210 for receiving inputs and providingoutputs, logic 220, one or more processing modules 230, and memorymodule 240. Logic 220 includes any information, logic, applications,rules, and/or instructions stored and/or executed by controller 200.Processing modules 230 may each include one or more microprocessors,controllers, or any other suitable computing devices or resources andmay work, either alone or with other components, to provide a portion orall of the functionality described herein. Controller 200 mayadditionally include (or be communicatively coupled to via wireless orwireline communication) one or more memory modules 240. Memory modules240 may be non-transitory and may each include any memory or databasemodule. Memory modules 240 may take the form of volatile or non-volatilememory, including, without limitation, magnetic media, optical media,random access memory (RAM), read-only memory (ROM), removable media, orany other suitable local or remote memory component.

Returning to FIG. 1, controller 200 may be operable to determine, usingany appropriate logic in conjunction with signals received from othercomponents of milking box 120 (e.g., presence sensor 132, gate sensors134, and/or identification sensor 136, each of which is described withregard to FIG. 3, below), which gates 126 should be open and/or closed.Controller 200 may then communicate signals to the actuators coupled tothe determined gates 126, the signals causing the gates 126 to open orclose. The automated control of gates 126 using controller 200 isdescribed in further with regard to FIG. 3, below

Each milking box 120 may additionally include an equipment portion 128located to the rear of stall portion 122 (i.e., adjacent to rear wall124 c of stall portion 122). Equipment portion 128 may comprise anystructure suitable for housing and/or storing a robotic attacher (e.g.,robotic attacher 150, described below with regard to FIG. 3), one ormore preparation cups, teat cups, receiver jars, separation containers,and/or any other suitable milking equipment. Rear wall 124 c (which mayinclude a backplane 138, as described below with regard to FIG. 3) mayseparate stall portion 122 from equipment portion 128 such thatequipment portion 128 is substantially inaccessible to a dairy cowlocated in stall portion 122. Accordingly a dairy cow located in stallportion 122 may be prevented from accidentally damaging the milkingequipment by kicking, biting, trampling, or exposing the milkingequipment to dirt, fluids, etc.

In certain embodiments, the equipment portion 128 being located to therear of stall portion 122 may allow milking boxes 120 to be aligned in asingle row such that walls 124 b and 124 d of each milking box 120 maycomprise an entry gate 126 a and an exit gate 126 b (as illustrated inFIG. 1A). As a result, milking boxes 120 may be used to sort dairy cowsinto particular regions 110 by controlling the opening/closing of eachgate 126 (e.g., in response to signals from a controller 200, asdescribed above). For example, a dairy cow needing a health check ormedical attention my be sorted into an appropriate region 110 (e.g., aveterinary pen). As another example, a dairy cow determined to befinished milking for the year and needing to be dried off and bread maybe sorted out of the milking heard. As yet another example, a dairy cowmay be sorted into one of a number of regions 110 based on the stage oflactation of the dairy cow (as dairy cows in different stages mayrequire different feeds).

In certain other embodiments, the equipment portion 128 being located tothe rear of stall portion 122 may allow pairs of milking boxes 120 to belocated side by side such that the milking boxes share a wall 124 (e.g.,wall 124 b may be shared between milking box 120 c and milking box 120d, as depicted in FIG. 1B). As a result, a single robotic attacher(e.g., robotic attacher 150, described below with regard to FIG. 3) maybe shared by the pair of milking boxes 120, which may reduce to cost ofinstalling multiple milking boxes 120 in the enclosure 100.

FIG. 3 illustrates a detailed perspective view of an example milking box120, according to certain embodiments of the present disclosure. Asdescribed above with regard to FIG. 1, milking box 120 may comprise astall portion 122 (defined by walls 124 and gates 126) and equipmentportion 128 located to the rear of stall portion 122. In certainembodiments, stall portion 122 of milking box 120 may include a feedbowl 130, a presence sensor 132, one or more gate sensors 134, and anidentification sensor 136. Additionally, one or more of feed bowl 130,presence sensor 132, gate sensor(s) 134, and identification sensor 136may be communicatively coupled to controller 200 (described above withregard to FIG. 2).

In certain embodiments, feed bowl 130 may dispense feed in order toattract a dairy cow so that the dairy cow will enter milking box 120voluntarily. Accordingly, at least one of the entry gates 126 a mayremain open when there is no dairy cow present to allow a dairy cow toenter. Once the dairy cow has entered milking box 120, presence sensor132 may detect the presence of the dairy cow. For example, presencesensor 132 may detect when the dairy cow has passed through the entrancegate 126 a and/or when the dairy cow is generally centered in the stallportion 122. Upon detecting the presence of the dairy cow, presencesensor 132 may send a signal to controller 200. In response to thesignal, controller 200 may cause one or more actuators to close gates126. Gate sensor 134 may determine when gates 126 have closed. Gatesensor 134 may communicate a signal to controller 200 upon determiningthat gates 126 have closed. Controller 200 may initiate a milkingprocedure in response to the signal.

In certain embodiments, identification sensor 136 may determine theidentity of the dairy cow. As an example, identification sensor 136 maycomprise an antenna operable to read a radio frequency identification(RFID) from an ear tag, a collar, or other identifier associated withthe dairy cow. Once the dairy cow has been identified, theidentification sensor 136 may optionally be turned off to preventwasting power and/or to minimize the dairy cow's exposure to radiowaves.

Identification sensor 136 may communicate the identity of the dairy cowto controller 200 to facilitate retrieving information describing thedairy cow (e.g., from memory 240 or any other suitable location).Information describing the dairy cow may comprise historical datadescribing the particular dairy cow during a previous time period, suchas a previous milking cycle. The previous milking cycle may refer to amilking cycle in which milking equipment was manually attached (e.g., bya user) or a milking cycle in which milking equipment was automaticallyattached (e.g., by a robotic attacher 150, described below). In certainembodiments, milking equipment may be attached manually the first timethe dairy cow is milked in order to establish initial informationdescribing the dairy cow, such as where the teats are located. Thelocation of the dairy cow's teats may be described relative to a featureof the dairy cow, such as relative to the rear of the dairy cow, thehind legs, and/or a portion of the dairy cow's udder, such as a mid-lineof the udder or relative to one or more of the other teats. A roboticattacher (e.g., robotic attacher 150, described below) may use theinformation describing the location of the teats during subsequentmilkings to facilitate automatically attaching the milking equipment.

Examples of historical data include measurements, statistics, healthinformation, and any other information describing the dairy cow during aprevious time period. Examples of measurements include the length of thedairy cow (e.g., from head to tail) and the location of the dairy cow'steats during a previous milking cycle. Examples of statistics mayinclude statistics describing when the dairy cow was last milked, theamount of milk produced in previous milking cycles, and so on. Examplesof health information may include a designation not to milk the dairycow due to a health problem or a designation to sort the dairy cow intoa veterinary pen. In certain embodiments, a user may set an indicator inthe database to indicate that the dairy cow should be sorted into theveterinary pen because the dairy cow is due for a check-up or becausethe user noticed the dairy cow appears to be ill or injured.

Controller 200 may use the information retrieved according to theidentity of the dairy cow to determine how the particular dairy cowshould be handled. If the information indicates the dairy cow should notbe milked, controller 200 may cause an actuator to open one or more ofthe exit gates 126 b. For example, if controller 200 determines that thedairy cow should be sorted into a particular region 110 of enclosure100, such as a veterinary pen, it may cause the exit gate 126 b thataccesses the selected region 110 to open. Alternatively, controller 200may cause multiple exit gates 126 b to open if the dairy cow is to begiven the option of which region 110 to occupy upon exiting milking box120. In certain embodiments, a prod may be used to encourage the dairycow to exit. Examples of prods include a noise, a mechanical device, ora mild electric shock.

Upon a determination that the dairy cow should be milked, controller 200may continue the milking procedure. In certain embodiments, controller200 may cause a dispenser to drop feed into feed bowl 130. Additionally,controller 200 may cause feed bowl 130 to move toward the dairy cow inorder to encourage the dairy cow to move to a pre-determined part ofstall portion 122. As an example, feed bowl 130 may be initiallypositioned in the front of stall portion 122 when the dairy cow enters.Feed bowl 130 may then move back toward the dairy cow to encourage thedairy cow to move to the rear of stall portion 122 (e.g., againstbackplane 138, described below) in order to facilitate attaching themilking equipment to the dairy cow. To ensure feed bowl 130 does notcrowd the dairy cow, the amount of movement of feed bowl 130 may becustomized to the size of the dairy cow. For example, a user maydetermine an appropriate location for feed bowl 130 the first time thedairy cow enters milking box 120. The location may be stored (e.g., inmemory module 240 of controller 200) such that it may be retrievedduring subsequent milkings according to the identity of the dairy cow.Alternatively, the feed bowl 130 may be configured to continue movingtoward the rear of the stall portion 122 until the dairy cow contactsbackplane 138 (e.g., as described with respect to FIGS. 11A-11D below),which may indicate that the dairy cow is positioned in a location thatis suitable for attaching the milking equipment.

In certain embodiments, rear wall 124 c of stall portion 122 includes abackplane 138. Backplane 138 may comprise any suitable configuration ofmaterials suitable for locating the rear of the dairy cow in order tofacilitate the efficient attachment of the milking equipment. In certainembodiments, the dairy cow may be backed toward backplane 138 by movingfeed bowl 130 as described above. In certain other embodiments,backplane 138 may be moved forward toward the dairy cow. In certainother embodiments, a combination of backing the dairy cow towardbackplane 138 and moving backplane 138 forward toward the dairy cow maybe used. It may be determined that the rear of the dairy cow has beenlocated when a portion of backplane 138, such as a pipe or bracket,touches the rear of the dairy cow at any suitable location, such asapproximately mid-flank (i.e., between the udder and the tail).Backplane 138 may additionally include a manure gutter for directingmanure toward a side of stall portion 122 (e.g., away from the dairycow's udder and the milking equipment).

In certain embodiments, stall portion 122 may additionally include awaste grate 140 for disposing of waste. Waste grate 140 may have a roughsurface to discourage the dairy cow from standing on it. In addition,waste grate 140 may be dimensioned such that when the dairy cow's hindlegs are positioned on opposite sides of waste grate 140, the hind legsare separated to facilitate attachment of the milking equipment to thedairy cow's teats.

In certain embodiments, equipment portion 128 of milking box 120 mayinclude a robotic attacher 150, one or more preparation cups 166, teatcups 168, pumps 170, receiver jars 172, milk separation containers 174,and/or any other suitable milking equipment. In certain embodiments,robotic attacher 150 may be suspended into equipment portion 128 from arail 160. Rail 160 may be generally located above the level of the udderof a dairy cow located in stall portion 122 such that the teats of thedairy cow may be accessible to robotic attacher 150 when suspended fromrail 160. For example, rail 160 may extend across the top of equipmentportion 128 of milking box 120 and may be oriented substantiallyparallel to rear wall 124 c.

Robotic attacher 150 may be communicatively coupled to controller 200(e.g., via a network facilitating wireless or wireline communication).Controller 200 may cause robotic attacher to attach certain milkingequipment to the dairy cow's teats. For example, in certain embodiments,robotic attacher 150 may access a storage area 164 to retrievepreparation cups 166 and/or teat cups 168. Preparation cups 166 may beadapted to clean the teats, stimulate the flow of milk, and discard foremilk from the teat (e.g., the first few millimeters of milk that may bedirty). Teat cups 168 may be adapted to extract milk from the dairy cow.Preparation cups 166 and/or teat cups 168 attached to extendable hosesmay by hung within storage area 164 between milkings to protect the cupsfrom manure and flies. When it is time to milk the dairy cow, roboticattacher 150 may pull preparation cups 166 from storage area 164 andattach them to the dairy cow one at a time, two at a time, or four at atime. After the teats have been prepared, preparation cups 166 may beremoved and teat cups 168 may be attached one at a time, two at a time,or four at a time. Once the cups are attached, robotic attacher 150 maywithdraw to prevent the dairy cow from causing accidental damage to theequipment, and the system may proceed with milking the dairy cow.

During milking, pump 170 may pump good milk from teat cup 168 toreceiver jar 172 to be stored at a cool temperature. Pump 170 may pumpbad milk to milk separation container 174 to be discarded. Milk may bedetermined to be bad based on testing the milk and/or based on theparticular dairy cow from which the milk has been extracted. Forexample, information retrieved from a database according to the dairycow's identifier may indicate that the milk should be discarded becausethe dairy cow is ill or has recently calved.

In certain embodiments, robotic attacher 150 comprises a main arm 152, asupplemental arm 154, a gripping portion 156, and a vision system 158.In certain embodiments, the movement of main arm 152, supplemental arm154, and gripping portion 156 may be varied in response to signalsreceived from controller 200 (as described in further detail in FIG. 4below). Although the components of robotic attacher 150 are depicted andprimarily described as oriented in a particular manner, the presentdisclosure contemplates the components having any suitable orientation,according to particular needs.

In order to obtain access to the dairy cow's teats, main arm 152,supplemental arm 154, and gripping portion 156 may work together tofacilitate movement in three dimensions, for example, according to anx-axis, a y-axis, and a z-axis. As illustrated, the x-axis extends inthe direction of the dairy cow's length (e.g., from head-to-tail), they-axis extends in the direction of the dairy cow's height, and thez-axis extends in the direction of the dairy cow's width.

Main arm 152 may comprise a vertical arm movably coupled to rail 160.For example, a hydraulic cylinder may movably couple main arm 152 torail 160. Main arm 152 may traverse rail 160 to facilitate movement ofrobotic attacher 150 along the z-axis. Accordingly, rail 160 maycomprise a track and rollers adapted to support the weight of roboticattacher 150 and to facilitate movement of main arm 152 back-and-forthalong rail 160. To prevent wires and hoses from interfering with themovement of main arm 152 along rail 160, guides 162 may be used toloosely hold the wires and hoses in place. For example, guides 162 maycomprise U-shaped brackets that allow the wires and hoses to extend asufficient amount to accommodate movements of main arm 152, but preventthe wires and hoses from dangling in the path of main arm 152.

Main arm 152 attaches to supplemental arm 154. Supplemental arm 154facilitates movements in any direction. That is, supplemental arm 154moves in-and-out along the x-axis, up-and-down along the y-axis, and/orfrom side-to-side along the z-axis. Accordingly, supplemental arm mayextend between the rear legs of the dairy cow located within stallportion 122 in order to attach milking equipment to the dairy cow.Supplemental arm 154 may comprise gripping portion 156. Gripping portion156 may grip a preparation cup 166 or a teat cup 168 for attachment tothe dairy cow's teat. Gripping portion 156 may comprise a wrist adaptedto perform fine movements, such as pivot and tilt movements, to navigatearound the dairy cow's legs and to access the dairy cow's teats.Additional description of robotic attacher 150 may be found in FIGS.7-10 below. To determine the location of the dairy cow's legs and teats,robotic attacher 150 may use vision system 158. An example embodiment ofvision system 158 is described with respect to FIGS. 4A-4C below.

FIG. 4A illustrates a detailed perspective view of an example of roboticattacher 150, according to certain embodiments of the presentdisclosure. Robotic attacher 150 may include a main arm 152, asupplemental arm 154, a gripping portion 156, and a vision system 158.As described with respect to FIG. 3, robotic attacher 150 may becommunicatively coupled to controller 200. Controller 200 may causerobotic attacher to retrieve a cup, such as preparation cup 166 or teatcup 168, move the cup toward a teat of a dairy cow within milking box120, and attach the cup to the teat.

In general, the teats of the dairy cow may be relatively less visiblewhen looking at the dairy cow from the rear and relatively more visiblewhen looking at the dairy cow from the side. Vision system 158 mayfacilitate locating the teats from a position to the rear of the dairycow. Vision system 158 may include multiple cameras, such as a firstcamera 158 a and a second camera 158 b. In certain embodiments, cameras158 a, 158 b may be coupled to robotic attacher 150 and may bepositioned at any suitable location along main arm 152 or supplementalarm 154. As an example, second camera 158 b may be coupled to grippingportion 156 of supplemental arm 154 at a location proximate to the partof gripping portion 156 adapted to hold a teat cup, and first camera 158a may be coupled to supplemental arm 154 at a location between secondcamera 158 b and main arm 152.

In some embodiments, first camera 158 a may be coupled to supplementalarm 156 in a first fixed location and second camera 158 b may be coupledto supplemental arm in a second fixed location. Controller 200 maymaintain calibration information indicating the distance along thex-axis between first camera 158 a and a first calibration point and/orthe distance along the x-axis between second camera 158 b and a secondcalibration point. The location of the first calibration point may beeither the same as or different from the location of the secondcalibration point, and each calibration point may correspond to anysuitable x-axis location on robotic attacher 150. Examples ofcalibration points may include a point aligned with a feature of firstcamera 158 a, such as the midpoint of the lens of first camera 158 a, apoint aligned with a feature of second camera 158 b, such as themidpoint of the lens of second camera 158 b, a midpoint of the teat cupgripping claws of robotic attacher 150, and/or any other suitable point.Controller 200 may use the calibration information when positioningsupplemental arm 154 in order to provide cameras 158 a,b with relativelygood visibility of the features of the cow, to determine where to placemilking equipment (e.g., teat cup 168), and/or to prevent roboticattacher 150 from colliding with the cow.

In operation, controller 200 may access a first image 176 generated byfirst camera 158 a (e.g., from memory module 240) and use first image176 to determine, using any suitable logic 220, a reference point 178proximate to the udder, which may then be stored (e.g., in memory module240). The reference point 178 may be defined relative to certainfeatures of the dairy cow, such as the hind legs and/or the udder.Controller 200 may send a signal to robotic attacher 150 causing roboticattacher 150 to position second camera 158 b relative to the referencepoint 178. Accordingly, second camera 158 b may have a consistent pointof reference from one milking cycle to the next, which may allow theteats to be located efficiently. Controller 200 may access a secondimage 180 generated by second camera 158 b (e.g., from memory module240) in order to determine, using any suitable logic 220, a location ofa teat.

In certain embodiments, first camera 158 a may comprise athree-dimensional camera adapted to generate a first image 176 depictingthe rear of the dairy cow, including the hind legs and the udder. Usinga three-dimensional camera may facilitate generating a relativelycomplete image of the rear of the dairy cow within approximately acouple of seconds (e.g., one second), which may be faster than theamount of time it would take for a two-dimensional camera to generate asimilar image. In certain embodiments, second camera 158 b may comprisea two-dimensional camera adapted to generate a second image 180depicting at least a portion of the udder to facilitate locating theteats. Second camera 158 b may facilitate locating the end of each teatwith a relatively high degree of accuracy, such as within a fewmillimeters. The location of the teat may be used to instruct roboticattacher 150 where to attach the milking equipment.

First camera 158 a may begin generating the first image 176 in responseto a signal from controller 200 indicating that the dairy cow ispositioned proximate to the milking equipment. As an example, the signalmay indicate that the rear of the dairy cow has been detected by thebackplane 138 of the milking box 120. First camera 158 a may begingenerating the first image 176 from a starting point and may update thefirst image 176 in real-time as robotic attacher 150 approaches thedairy cow. The starting point may be determined according to a defaultposition of robotic attacher 150 (e.g., a position determined relativeto milking stall 122). Thus, the starting point may be determinedwithout the use of historical data associated with the particular dairycow being milked. First camera 158 a may communicate the first image 176to controller 200, and controller 200 may use the image to locate mainfeatures of the dairy cow, such as the right hind leg, the left hindleg, the udder, and/or the tail.

Controller 200 may determine the reference point 178 based on thelocation of the main features of the dairy cow. The reference point 178may be defined relative to certain features of the dairy cow, such asthe hind legs and/or the udder. As an example, the reference point 178may be defined between the hind legs and/or below the udder. Forexample, in certain embodiments, the reference point 178 may be locatedproximate to a mid-point of the udder. The mid-point of the udder mayrefer to a point generally located between the front teats and the rearteats in the x-direction and/or between the left teats and the rightteats in the z-direction. In certain embodiments, the mid-point of theudder may be estimated prior to determining the precise location of theteats, for example, according to the general size and location of theudder. The reference point 178 may be spaced apart from the dairy cow inthe y-direction to minimize the likelihood that second camera 158 btouches the dairy cow. For example, the reference point 178 may belocated a few inches below the mid-point of the udder.

Controller 200 may communicate the reference point 178 and/orinformation describing the main features of the dairy cow to roboticattacher 150. The reference point 178 may be used to position secondcamera 158 b. The information describing the main features of the dairycow may be used to prevent robotic attacher 150 from colliding with thedairy cow when navigating second camera 158 b toward the reference point178. Information describing the main features of the dairy cow mayinclude the position of the hind legs, the space between the hind legs,the position of the udder, the height of the udder, the position of thetail, and/or other information. Once robotic attacher 150 has positionedsecond camera 158 b relative to the reference point 178, second camera158 b may begin scanning the udder.

In certain embodiments, second camera 158 b may determine where to lookfor one or more of the teats according to historical data. Thehistorical data may be received from controller 200 and may describe apreviously-determined location of the teats relative to the referencepoint 178. The previously-determined location may be based on thelocation of the teats during one or more previous milking cycles. As anexample, the previously-determined location may comprise the location ofthe teats during the most recent milking cycle. As another example, thepreviously-determined location may comprise an average of the locationsof the teats during a number of previous milking cycles. As anotherexample, the previously-determined location may comprise the location ofthe teats during a previous milking cycle in which the udder was likelyto be as full of milk as the current milking cycle. For example, ifeight hours have elapsed since the dairy cow was last milked, thepreviously-determined location may be determined from a previous milkingcycle in which the dairy cow had not been milked for approximately eighthours. Referring to historical data may minimize the area that secondcamera 158 b must scan in order to locate the teat and may reduce theamount of time required to locate the teat.

Second camera 158 b may communicate the second image 180 to controller200, and controller 200 may access the second image 180 to locate theteats of the dairy cow. As described above, in certain embodiments,second camera 158 b may comprise a two-dimensional camera, such as ahorizontal laser. If the horizontal laser may scan a portion of theudder other than the teats (e.g., a relatively even surface of theudder), the scan communicated to controller 200 may generally resemble asubstantially solid line. If the horizontal laser scans a portion of theudder that includes the teats, the scan communicated to controller 200may generally resemble a broken line depicting the teats and the spacesbetween the teats. As an example, controller 200 may determine that ateat has been located if the scan comprises a broken line in which asolid portion of the line generally corresponds to the width of a teatand the broken portions of the line generally correspond to theproportions of the space between teats.

In certain embodiments, robotic attacher 150 may further comprise anozzle 182. Nozzle 182 may be coupled to gripping portion 156. Nozzle182 may spray disinfectant on the teats of the dairy cow at the end of amilking cycle, that is, after the dairy cow has been milked and the teatcups have been removed. The disinfectant may be sprayed to preventmastitis or other inflammation or infection. In certain embodiments,gripping portion may be operable to rotate 180° around the x-axis.During milking, second camera 158 b may be generally oriented on top ofgripping portion 156, and nozzle 182 may be generally orientedunderneath gripping portion 156 (i.e., opposite second camera 158 b).Orienting nozzle 182 underneath gripping portion 156 during milking mayprevent milk or other contaminants from accessing nozzle 182. Once themilking has been completed, gripping portion 156 may rotate such thatnozzle 182 may be generally oriented on top of gripping portion 156, andsecond camera 158 b may be generally oriented underneath grippingportion 156. Orienting nozzle 182 on top of gripping portion 156 aftermilking may facilitate spraying the teats with disinfectant from nozzle182. FIG. 8A and FIGS. 9A-9B below illustrate an example of a rotatingassembly for rotating gripping portion 156.

FIGS. 4B-4C illustrate examples of a side plan view and a front planview of second camera 158 b, respectively, according to certainembodiments of the present disclosure. In certain embodiments, secondcamera 158 b includes a transmitter 260 that transmits a signal 262 anda lens 264 that receives a reflection of signal 262. Lens 264 mayprovide the reflection of signal 262 to image processing componentsoperable to generate second image 180. In some embodiments, signal 262comprises a two-dimensional laser signal. Transmitter 264 may transmitsignal 262 as a horizontal plane oriented at a fixed angle θ₁ relativeto the x-axis of supplemental arm 154. For example, when second camera158 b is positioned in an upright orientation, angle θ₁ may beconfigured at an upward angle between 5 and 35 degrees relative to thex-axis.

In some embodiments, second camera 158 b includes a protective layer 266positioned in front of lens 264. Protective layer 266 may compriseglass, plastic, or any material suitable for protecting lens 264 fromfluids and debris. Supplemental arm 154 may include a camera-facingnozzle 268 operable to spray water or any other cleanser on protectivelayer 266, for example, in response to a signal from controller 200. Insome embodiments, controller 200 may initiate spraying protective layer266 upon a determination that a milking cycle has been completed.Periodically spraying protective layer 266 with cleanser may preventdebris from collecting in front of lens 264. Protective layer 266 mayoptionally include an anti-condensation system, such as an electricaldefog system or an air nozzle to prevent condensation from collecting onprotective layer 266.

FIG. 5A illustrates an example method 500 for milking a dairy cow usingthe example milking box 120 depicted in FIGS. 1-4, according to certainembodiments of the present disclosure. In certain embodiments, milkingbox 120 may be positioned within enclosure 100, and at least one of thegates 126 of stall portion 122 may be opened to allow the dairy cow tovoluntarily enter milking box 120. At step 502, presence sensor 132detects the presence of the dairy cow. Presence sensor 132 communicatesa signal to controller 200 indicating the presence of the dairy cow hasbeen detected. Controller 200 sends a signal to an actuator causinggates 126 to close at step 504. Thus, the dairy cow is prevented fromexiting the milking box. Gate closed sensor 134 determines that thegates are closed and communicates a gate-closed signal to controller200. In response to the gate-closed signal, controller 200 causes themilking procedure to proceed to the next step. For example, controller200 sends a signal requesting identification sensor 136 to provide anidentifier associated with the dairy cow.

At step 506, identification sensor 136 reads an ear tag, collar, orother identifier (e.g., an RFID signal) associated with the dairy cow.Identification sensor 136 communicates the identifier to controller 200to facilitate determining the identity of the cow. At step 508,controller 200 retrieves information associated with the particulardairy cow according to the determined identity of the dairy cow. Forexample, information may be retrieved from memory 240. Controller 200determines whether to proceed with milking the dairy cow at step 510.The determination may be made according to the information associatedwith the dairy cow. For example, if the information indicates that thedairy cow is ill or that the dairy cow has already been milked in thecurrent milking cycle, a determination may be made not to proceed withmilking the dairy cow. Alternatively, if the information indicates thatthe dairy cow is healthy and that it is time to milk the dairy cow, adetermination may be made to proceed with milking the dairy cow. If thedairy cow is to be milked, the method continues to step 512. If thedairy cow is not to be milked, the method skips to step 548.

At step 512, controller 200 causes a dispenser to drop feed into feedbowl 130 and positions feed bowl 130. In certain embodiments, feed bowl130 may move toward the rear of the stall to encourage the dairy cow toback-up toward the milking equipment. Controller 200 determines that thedairy cow is positioned near the milking equipment at step 514. Forexample, a signal received from backplane 138 of milking box 120 may beused to determine that the dairy cow is positioned near the milkingequipment. The signal may indicate when the rear of the dairy cowtouches a portion of backplane 138. Upon determining the dairy cow ispositioned near the milking equipment (e.g., toward the rear of thestall portion of the milking box), controller 200 instructs first camera158 a to generate a first image 176 of the rear of the dairy cow at step516. In certain embodiments, first camera 158 a may be positioned onrobotic attacher 150, and first camera 158 a may begin generating thefirst image 176 in-flight, that is, as robotic attacher 150 retrieves apreparation cup 166 or teat cup 168 from storage and begins moving thecup toward the udder. At step 518, controller 200 receives the firstimage 176. The first image 176 includes main features of the dairy cow,such as the hind legs, the udder, and/or the tail. Controller 200accesses the first image 176 to determine a reference point 178 at step520. As an example, the reference point 178 may comprise a point betweenthe dairy cow's hind legs, a point below the dairy cow's udder, and/or apoint proximate to a mid-point of the udder. The mid-point may refer toa point between a first teat and a second teat (e.g., between a leftteat and a right teat and/or between a front teat and a rear teat).

At step 522, controller 200 sends a signal causing robotic attacher 150to position second camera 158 b relative the reference point 178.Controller 200 communicates historical data to second camera 158 b atstep 524. The historical data may comprise data retrieved from adatabase that indicates a previously-determined location of the teatsduring a previous milking cycle. The previously-determined location maybe described relative to the reference point 178. The method proceeds tostep 526 where controller 200 sends a signal causing second camera 158 bto generate a second image 180. Second camera 158 b may generate thesecond image 180 by scanning a portion of the udder indicated by thehistorical data. Second camera 158 b may scan the whole teat tofacilitate identifying the angle of the teat and the point attachment.At step 528, the controller 200 receives the second image 180 from thesecond camera. Controller 200 accesses the second image 180 to determinethe location of the teats at step 530. The teats may be located in anysuitable manner, such as one at a time, two at a time, or four at atime.

Upon determining the location of the teats, controller 200 causesrobotic attacher 150 to attach one or more preparation cups 166 at step532. Second camera 158 b may continue to scan the teat while thepreparation cup is being attached. Continuing to scan the teat may allowfor efficient attachment of the preparation cup. In addition, continuingto scan the teat may allow the preparation cup to be attached at asuitable angle, with the mouthpiece centered on the teat, to preventfolding the teat into the preparation cup. Vacuum pressure may be usedto hold the preparation cups in place. Preparation cup 166 facilitatespreparing the teat at step 534. Preparation may include cleaning theteat, stimulating the flow of milk, and discarding fore milk from theteat. After each of the teats have been prepared, preparation cups 166may be removed at step 536. For example, the vacuum pressure may bereleased to remove the preparation cups and the preparation cups may bereturned to the storage area.

Preparation cup(s) 166 may be attached to the teats of the cow in anysuitable sequence. In some embodiments, the same preparation cup 166 maybe used to prepare each of the teats, and the preparation sequence maybe determined based on the storage location of preparation cup 166. Forexample, if preparation cup 166 is stored on the right side of equipmentportion 128 (e.g., to the right of robotic attacher 150), the teats maybe prepared in the sequence of left front teat, right front teat, rightrear teat, and left rear teat. Accordingly, robotic attacher 150 mayperform steps 516-536 to prepare the left front teat. After preparingthe left front teat, robotic attacher 150 may return to reference point178 and perform steps 526-536 to prepare the right front teat. Afterpreparing the right front teat, robotic attacher may return to referencepoint 178 and perform steps 526-536 to prepare the right rear teat.After preparing the right rear teat, robotic attacher 150 may return toreference point 178 and perform steps 526-536 to prepare the left rearteat.

In some embodiments, robotic attacher 150 maintains the preparation cup166 within stall portion 122 of milking box 120 from the time thatpreparation cup 166 is attached to the left front teat through the timethat preparation cup 166 is attached to the left rear teat. Maintainingpreparation cup 166 within stall portion 166 may allow robotic attacher150 to navigate from one teat to the next using only second images 180from second camera 158 b, that is, without requiring additional firstimages 176 from first camera 158 a. After detaching preparation cup 166from the left rear teat, preparation cup 166 may be retracted toequipment portion 128 of milking box 120. The preceding discussiondescribes an example in which preparation cup 166 is stored on the rightside of equipment portion 128. An analogous procedure may be performedif preparation cup 166 is stored on the left side of equipment portion128 (e.g., to the left of robotic attacher 150) by preparing the teatsin the sequence of right front teat, left front teat, left rear teat,and right rear teat.

The method continues to step 538, where controller 200 causes roboticattacher 150 to attach a teat cup 168. For example, teat cup 168 may beretrieved from storage area 164 and navigated to the teat. Second camera158 b may continue to scan the teat while the teat cup 168 is beingattached to ensure proper placement of the teat cups. Vacuum pressuremay be used to attach the teat cup 168. A sensor may be used todetermine the vacuum pressure associated with each teat cup 168. If thevacuum level is low, it may indicate that teat cup 168 has fallen offand needs to be reattached. In certain embodiments, additional teat cups168 may be attached by re-performing steps 522-530 to locate additionalteats.

Teat cup(s) 168 may be attached to the teats of the cow in any suitablesequence. In some embodiments, four teat cups 168 may be used to milkthe cow (one teat cup 168 per teat). The attachment sequence may bedetermined based on the storage location of teat cups 168. Teat cups 168may be stored on the side of equipment portion 128 opposite preparationcup(s) 166. Alternatively, teat cups 168 may be stored on the same sideof equipment portion 128 as preparation cup(s) 166. FIG. 5B illustratesan example in which four teat cups 168 a-d are stored on the right sideof equipment portion 128 and the attachment sequence follows the orderof right front teat (teat cup 168 a), left front teat (teat cup 168 b),right rear teat (teat cup 168 c), and left rear teat (teat cup 168 d).Alternatively, if teat cups 168 are stored on the left side of equipmentportion 128 (not shown), teat cups 168 may be attached in the sequenceof left front teat, right front teat, left rear teat, and right rearteat. Each time robotic attacher 150 retrieves one of the teat cups 168from equipment portion 128, robotic attacher may determine referencepoint 178 and then perform steps 522-530 to locate the next teat in thesequence. Determining the reference point may include receiving anupdated first image 176 from first camera 158 a (e.g., repeating steps516-520) and/or retrieving reference point 178 from memory module 240.Attaching the teat cups in sequence may reduce the likelihood of roboticattacher 150 bumping into an attached teat cup 168 or a milking hoseduring the process of attaching another teat cup 168.

Returning to FIG. 5A, once teat cups 168 have been attached to all fourteats, robotic attacher 150 may retract and the method may proceed tostep 540 to extract milk from the dairy cow. As an example, milk may beextracted by applying pulsation to the teat cup. A sensor may monitorthe flow of milk. If the flow becomes low, it may be determined whetherteat cup 168 should be removed or reattached. For example, if teat cup168 has been attached for at least approximately one-and-a-half minutesand/or the amount of milk extracted is consistent with previous milkingcycles, it may be determined that teat cup 168 should be removed,otherwise, it may be determined that teat cup 168 should be reattached.When it is determined that teat cup 168 should be removed, controller200 initiates step 542 to remove teat cups 168. For example, controller200 may send a signal causing the vacuum pressure to be released toallow teat cups 168 to drop from the teats. Teat cups 168 may bereturned to storage area 164 by retracting hoses attached to teat cups168 or by any other suitable method. Controller 200 then sends a signalto robotic attacher 150 to cause gripping portion 156 to rotate at step544 in order to orient nozzle 182 toward the teat. The method appliesdisinfectant to the teat at step 546 by spraying the disinfectantthrough nozzle 182.

At step 548, controller 200 determines which gate(s) 126 to open.Selectively opening gates 126 may allow the dairy cow to be sorted intoa particular region 110 of enclosure 100. The dairy cow may be sorted ifits milk tested bad, if it failed to produce a sufficient amount ofmilk, if information retrieved from a database indicates the dairy cowshould be sorted, or for other suitable reasons. Controller 200 sends asignal causing an actuator to open the selected gate(s) at step 550. Incertain embodiments, a prod may be used to encourage the dairy cow toexit the milking box. The dairy cow exits the milking box and the methodends.

FIG. 6 illustrates an example method 600 for installation of milking box120, according to certain embodiments of the present disclosure. Themethod may begin by positioning walls 124 in order to define stallportion 122. For example, the method positions a front wall 124 a atstep 602. The method proceeds to step 604 where a rear wall 124 c ispositioned substantially parallel to front wall 124 a. Rear wall 124 cmay be spaced apart from front wall 124 a a suitable distance toaccommodate a dairy cow. At step 606, a first side wall 124 b ispositioned to extend between front wall 124 a and rear wall 124 c. Thefirst side wall may include one or more gates, such as an entry gate 126a and an exit gate 126 b. The method proceeds to step 608 to position asecond side wall 124 d to extend between front wall 124 a and rear wall124 c. Second side wall 124 d may be spaced apart from first side wall124 d in order to accommodate a dairy livestock within stall portion122. Second side wall 124 d may or may not include gates 126. Forexample, in certain embodiments, second side wall 124 d may comprise asecond entry gate 126 a and a second exit gate 126 b. In alternativeembodiments, second side wall 124 d may be positioned adjacent a secondmilking box and may define a boundary between milking box 120 and theadjacent milking box. In step 610, an equipment portion 128 ispositioned to the rear of milking box 120, adjacent rear wall 124 c.Rear wall 124 c may comprise a backplane 138 adapted to physicallycontact a mid-flank portion of the dairy livestock when the dairylivestock is positioned proximate to equipment portion 128 of milkingbox 120.

At step 612, a movable feed bowl 130 may be positioned within milkingbox 120. Movable feed bowl 130 may be adapted to move from the front ofmilking box 120 toward the rear of milking box 120 to encourage thedairy livestock to back-up toward backplane 138. The method may proceedto step 614 to install a plurality of sensors within milking box 120.Examples of sensors include a presence sensor 132 adapted to detect thepresence of the dairy livestock within milking box 120, one or more gateclosed sensors 134 to detect whether gates 126 are closed, and alivestock identification sensor 136 adapted to determine the identity ofthe dairy livestock present within milking box 120. At step 616, a wastegrate 140 may be positioned within milking box 120.

The method may proceed to step 618 to position a rail 160. Rail 160 maybe positioned to extend in a horizontal direction substantially parallelto rear wall 124 c. For example, the horizontal direction may refer tothe z-axis illustrated in FIG. 3. In certain embodiments, rail 160 maybe positioned proximate to rear wall 124 c. At step 620, a roboticattacher 150 may be positioned in milking box 120. Robotic attacher maycomprise a main arm 152, a supplemental arm 154, including a grippingportion 156, and a vision system 158. In certain embodiments, roboticattacher 150 may be positioned in equipment portion 128 of milking box120 by suspending main arm 152 from rail 160. Accordingly, main arm 152may be operable to traverse rail 160 in the horizontal direction. Incertain embodiments, one or more guides 162 may be positioned proximateto rail 160. Guides 162 may be adapted to guide the path of hoses andwires connected to robotic attacher 150 to prevent the hoses and wiresfrom interfering with the movement of main arm 152 along rail 160.Supplemental arm 154 may be positioned to facilitate selectivelyextending supplemental arm 154 between the rear legs of the dairylivestock located within stall portion 122.

The method proceeds to step 622 to position other milking equipment inequipment portion 128 of milking box 120. Other milking equipment mayinclude one or more preparation cups 164, teat cups 168, pumps 170, milkreceiver jars 172, and/or milk separation containers 174. The methodthen ends.

FIG. 7A illustrates an example of an actuator system for facilitatingmovements of robotic attacher 150, according to certain embodiments ofthe present disclosure. As described with respect to FIG. 3, roboticattacher 150 may include main arm 152 and supplemental arm 154 coupledto main arm 152. Supplemental arm 154 includes a gripping portion 156operable to grip milking equipment, such as teat cup 168. Main arm 152may be suspended from rail 160, and guides 162 may support cablesconnected to robotic attacher 150.

In some embodiments, the actuator system includes a first actuator 300 xthat facilitates moving main arm 152 in the x-direction, a secondactuator 300 y that facilitates moving main arm 152 in the y-direction,and a third actuator 300 z that facilitates moving main arm 152 in thez-direction. Supplemental arm 154 may provide further translation in thez-direction, for example, using a pivot system such as that describedwith respect to FIGS. 8A-8D below.

Actuators 300 may comprise any suitable type of actuator. As an example,each actuator 300 may comprise a hydraulic cylinder. Use of a hydrauliccylinder may allow robotic attacher 150 to substantially maintain itsposition in the event that the dairy cow accidently bumps into roboticattacher 150.

Each actuator 300 may receive signals from controller 200 forpositioning main arm 152. Controller 200 may determine the currentposition of robotic attacher 150 and communicate signals instructingrobotic attacher 150 to move from the current position to a desiredposition. As an example, during a teat cup attachment sequence, thecurrent position may configure main arm 152 such that gripping portion156 of robotic attacher 150 is located within equipment portion 128 ofmilking box 120. The desired position may configure main arm 152 in thex-, y-, and/or z-direction such that gripping portion 156 of roboticattacher 150 is located proximate to reference point 178. Controller 200may determine the current position of main arm 152 based on informationreceived from encoders 302. For example, encoder 302 x may correspond toactuator 300 x and may track an x-measurement of movement, encoder 302 ymay correspond to actuator 300 y and may track a y-measurement ofmovement, and encoder 302 z may correspond to actuator 300 z and maytrack a z-measurement of movement.

In some embodiments, each encoder 302 comprises a rotary encoder havingany suitable number of counts per rotation, such as at least 600 countsper rotation. Encoder 302 adjusts the count in response to detectingmovements associated with its corresponding actuator 300. If the countexceeds a threshold, encoder 302 communicates a signal to controller 200with a measurement indicating the amount of rotation (e.g., the numberof counts). Controller 200 may use the amount of rotation of encoder 302to determine a corresponding amount of linear movement of roboticattacher 150. In some embodiments, controller 200 determines the amountof linear movement according to calibration information. As an example,calibration information may indicate a measurement of linear movement bymain arm 152 in the x-direction that corresponds to a rotation (or afraction of a rotation) of encoder 302 x. Similarly, calibrationinformation may be used to calibrate encoders 302 y and 302 z.

In addition to determining the current position of main arm 152,controller 200 may be operable to determine the current position ofsupplemental arm 154. In some embodiments, controller 200 determines thecurrent position of supplemental arm 154 (or components of supplementalarm 154) based on the current position of main arm 152 and calibrationinformation. As an example, in some embodiments the calibrationinformation may indicate the x-axis distance “d” between a first pointcorresponding to main arm 152's point of attachment to supplemental arm154 and a second point corresponding to gripping claws 340 ofsupplemental arm 154. Accordingly, if controller 200 determines that thefirst point (main arm 152) is located at position x with respect to thex-direction, controller 200 may further determine that the second point(gripping claws 340) is located at position (x+d) with respect to thex-direction.

Actuators 300 may be positioned in any suitable location. In someembodiments, actuator 300 x may be coupled to an x-bar assembly 304positioned in a top portion of milking box 120. X-bar assembly 304 mayprovide structural support to actuator 300 x and/or may facilitatetranslating movements of actuator 300 x to main arm 152. As illustratedin FIG. 7B, x-bar assembly 304 may be oriented in the x-direction andcoupled to one or more support beams 308 extending between the top ofsidewall 124 b and the top of sidewall 124 d.

In some embodiments, one end of x-bar assembly 304 may be coupled torail 160 that suspends main arm 152. Rail 160 may be oriented in thez-direction and may extend between support tracks 161 a,b that definethe top of the sidewalls of equipment portion 128. When x-bar assembly304 extends, rail 160 may be pushed along support tracks 161 toward therear of equipment portion 128, thereby causing main arm 152 suspendedfrom rail 160 to move backward. When x-bar assembly 304 retracts, rail160 may be pulled along support tracks 161 toward the front of equipmentportion 128, thereby causing main arm 152 suspended from rail 160 tomove forward.

Returning to FIG. 7A, actuator 300 y may facilitate moving main arm 152in the y-direction. In some embodiments, main arm 152 includes a frameportion 152 a and an extendable portion 152 b. Frame portion 152 a maybe coupled to rail 160 and to extendable portion 152 b. Extendableportion 152 b may be coupled to supplemental arm 154 of robotic attacher150. A y-cable 306 may traverse frame portion 152 a in the y-direction,and y-cable 306 may be coupled to extendable portion 152 b. Actuator 300y may retract and extend y-cable 306 to facilitate moving extendableportion 152 b up and down along frame 152 a.

Actuator 300 z may be coupled to rail 160 that suspends main arm 152within equipment portion 128 located in a rear portion of milking box120. As described above, rail 160 may be oriented in the z-direction andmay extend between support tracks 161 that define the top of thesidewalls of equipment portion 128. Actuator 300 z may be coupled to anybelt, cable, rod, etc. suitable to facilitate translating movements ofactuator 300 z in the z-direction to main arm 152.

In some embodiments, the actuator system may further include actuatorsfor pivoting gripping portion 156 of supplemental arm 154 in thez-direction. Pivoting gripping portion 156 may extend the range ofz-motion of robotic attacher 150 in a manner that minimizes thelikelihood of robotic attacher 150 bumping the hind legs of the dairycow as it navigates beneath the dairy cow. FIGS. 8A-8D illustrate anexample of a pivot system 310 for robotic attacher 150, according tocertain embodiments of the present disclosure. As illustrated in FIG.8A, pivot system 310 may be positioned at an end of supplemental arm 154opposite gripping portion 156.

FIG. 8B illustrates an example of components that may make up pivotsystem 310. In the example, pivot system 310 includes actuators 312 aand 312 b. Actuator 312 a retracts a cable 314 a coupled to the rightside of gripping portion 156 to pivot gripping portion to the right, andactuator 312 b retracts a cable 314 b coupled to the left side ofgripping portion 156 to pivot gripping portion 156 to the left. In someembodiments, actuators 312 comprise pneumatic cylinders or othersuitable actuators and cables 314 comprise steel cables or othersuitable cables.

Actuators 312 may extend and retract cables 314 in response to signalscommunicated by controller 200. In some embodiments, controller 200 mayinstruct pivot system 310 to pivot gripping portion 156 into one ofthree positions: a maximum-right position, a centered position, or amaximum-left position. Controller 200 may maintain calibrationinformation corresponding to the maximum-left and maximum-rightpositions in memory modules 240. As an example, calibration informationmay indicate a first z-offset between the centered position and themaximum-right position, as illustrated in FIG. 8C, and a second z-offsetbetween the centered position and the maximum-left position, asillustrated in FIG. 8D. Controller 200 may use the z-offset to determinea current position of gripping portion 156. In addition, controller 200may use the z-offset to determine when to instruct actuators 312 topivot gripping portion 156. For example, controller 200 may instructactuator 312 a to pivot gripping portion 156 upon a determination that ateat of the dairy cow is located the z-offset distance to the right ofgripping portion 156.

Returning to FIG. 8B, in some embodiments, adjusting nuts 316 a and 316b may be coupled to cables 314 a and 314 b, respectively. Making anadjustment to nut 316 a may cause the maximum-right position to increaseor decrease depending on whether nut 316 a is tightened or loosened.Similarly, making an adjustment to nut 316 b may cause the maximum-leftposition to increase or decrease. Calibration information maintained bycontroller 200 may be updated based on the adjustments.

In order to center gripping portion 156, pivot system 310 may evenlyretract cables 314 a and 314 b by releasing pressure from both actuator312 a and actuator 312 b. In addition, pivot system 310 may include acentering assembly to facilitate evenly retracting cable 314 a and cable314 b. In some embodiments, the centering assembly includes a centeringactuator 318, a centering nut 320, a pivot plate 322, and a pivot bar324. Centering cylinder 318 may comprise a pneumatic cylinder generallypositioned within the top portion of pivot system 310's housing. Pivotplate 322 may extend between centering cylinder 318 and pivot actuators312 a,b. Pivot plate 322 may comprise a substantially flat surface andmay include any suitable apertures or cut out portions, for example, toaccommodate components of pivot system 310. As an example, pivot plate322 may include a first aperture through which cable 314 a is threadedand a second aperture through which cable 314 b is threaded. Pivot bar324 may be positioned in between the top and bottom (e.g., approximatelyin the middle) of the housing.

To center gripping portion 156, centering actuator 318 extends centeringnut 320 toward pivot plate 322 such that centering nut 320 pushes thetop portion of pivot plate 322 outward. As the top portion of pivotplate 322 moves outward, pivot bar 324 provides a fulcrum about whichpivot plate 322 pivots such that the bottom portion of pivot plate 322moves inward. As the bottom portion of pivot plate 322 moves inward, itapplies pressure evenly to pivot actuators 312 a and 312 b alignedside-by-side within the bottom portion of pivot system 310's housing.The pressure applied to actuators 312 a,b causes them to evenly retracttheir respective cables 314 a and 314 b. To maintain gripping portion156 in the centered position, centering actuator 318 may apply constantair pressure to centering nut 320.

Returning to FIG. 8A, in certain embodiments, robotic attacher 150 mayinclude a rotating assembly 328 for rotating gripping portion 156 ofsupplemental arm 154. Rotating assembly 328 may be positioned within afixed portion 155 of supplemental bar 154. Fixed portion 155 maycomprise a non-rotating portion of supplemental arm 154 that extendsbetween main arm 152 and gripping portion 156. Rotating assembly 328 mayinclude a rotating bar 330 and a swivel system 332. Rotating bar 330 mayextend along an x-axis of fixed portion 155. Rotating bar may be coupledto swivel system 332 at the proximal end and to gripping portion 156 atthe distal end such that when swivel system 332 rotates rotating bar332, gripping portion 156 rotates about the x-axis. Any suitableconnector or combination of connectors may couple rotating bar 330 toswivel system 332 and to gripping portion 156.

FIG. 9A illustrates an example of swivel system 332. Swivel system 332may include a first swivel 334 a operable to rotate rotating bar 330 ina first direction and a second swivel 334 b operable to rotate rotatingbar 330 in a second direction, the second direction opposite the firstdirection. As an example, first swivel 334 a may rotate rotating bar 330in a clockwise direction and second swivel 334 b may rotate rotating bar330 in a counter-clockwise direction. Each swivel 334 may provide anysuitable range of rotation, such as 0 to 360 degrees or 0 to 180degrees.

In some embodiments, swivels 334 comprise pneumatic swivels. Increasingair pressure to swivel 334 a may rotate rotating bar 330 into a firstposition. As an example, when rotating bar 330 is in the first position,gripping portion 156 may be oriented with camera 158 b on top and nozzle182 on bottom. If gripping portion 156 is gripping one of the teat cups168, teat cup 168 may be positioned in an upright orientation whenrotating bar 330 is in the first position. To maintain rotating bar 330in the first position, swivel 334 a may maintain constant air pressure.

Releasing air pressure to swivel 334 a and increasing air pressure toswivel 334 b may rotate rotating bar 330 into a second position. In someembodiments, swivel 334 b may rotate rotating bar 180 degrees in movingbetween the first position to the second position. Accordingly, whenrotating bar 330 is in the second position, gripping portion 156 may beoriented with camera 158 b on bottom and nozzle 182 on top. If grippingportion 156 is gripping one of the teat cups 168, teat cup 168 may bepositioned in an upside down orientation when rotating bar 330 is in thesecond position. To maintain rotating bar 330 in the second position,swivel 334 b may maintain constant air pressure.

FIG. 9B illustrates an example of gripping portion 156 rotated in thesecond position with nozzle(s) 182 on top. In some embodiments, grippingportion 156 may include multiple nozzles 182, such as first nozzle 182 aand second nozzle 182 b. As described with respect to FIG. 4A, eachnozzle 182 may be operable to spray disinfectant. Accordingly, eachnozzle 182 may correspond to a chemical hose 183 that connects nozzle182 to a disinfectant source. In some embodiments, nozzles 182 spray amist of disinfectant in a substantially conical shape. Rotating grippingportion 156 such that nozzles 182 are on top during the spraying mayallow for efficient disinfecting of the dairy cow's teats.

FIGS. 10A-10B illustrate an example of a gripping system of supplementalarm 154's gripping portion 156. The gripping system facilitates grippingmilking equipment, such as preparation cup 166 or teat cup 168. In someembodiments, the gripping system includes a gripping cylinder 330, acylinder arm 332, cylinder pivots 334 a and 334 b, claw pivots 336 a and336 b, claw arms 338 a and 338 b, and claws 340 a and 340 b. Grippingcylinder 330 extends cylinder arm 332 to pivot claw arms 338 open (FIG.10A) and retracts cylinder arm 332 to pivot claw arms closed (FIG. 10B).Opening claw arms 338 may cause claws 340 to release milking equipment,and closing claw arms 338 may cause claws 340 to grip milking equipment.

Cylinder arm 332 may be coupled to first cylinder pivot 334 a and secondcylinder pivot 334 b. Cylinder pivots 334 a and 334 b may be coupled toclaw pivots 336 a and 336 b, respectively. Claw pivots 336 and 336 b maybe coupled to claw arms 338 a and 338 b, respectively. Extendingcylinder arm 332 causes the ends of cylinder pivots 334 coupled tocylinder arm 332 to generally move inward such that cylinder arm 332 andcylinder pivots 334 become unaligned and claw pivots 336 (and theirrespective claw arms 338) move outward. Retracting cylinder arm 332causes the ends of cylinder pivots 334 coupled to cylinder arm 332 togenerally move outward such that cylinder arm 332 and cylinder pivots334 become substantially aligned and claw pivots 336 (and theirrespective claw arms 338) move inward.

Gripping cylinder 330 may comprise any suitable cylinder, such as apneumatic cylinder or a hydraulic cylinder. Gripping cylinder 330 mayextend and retract cylinder arm 332 in response to signals fromcontroller 200. As an example, gripping cylinder 330 may include a firstnozzle 342 a and a second nozzle 342 b. Configuring first nozzle 342 aas an inlet and second nozzle 342 b as an outlet may cause cylinder arm332 to extend. Applying constant pressure in first nozzle 342 a maymaintain cylinder arm 332 in an extended position such that claw arms338 maintain an open position. Configuring first nozzle 342 a as anoutlet and second nozzle 342 b as an inlet may cause cylinder arm 332 toretract. Applying constant pressure in second nozzle 342 b may maintaincylinder arm 332 in a retracted position such that claw arms 338maintain a closed position.

FIG. 11A illustrates an example of feed bowl 130 and backplane 138. Asdescribed with respect to FIG. 3, feed bowl 130 and backplane 138 mayfacilitate positioning a dairy cow toward the rear of milking box 120 inorder to attach milking equipment located behind the dairy cow. Feedbowl 130 may be located toward the front of stall portion 122. In someembodiments, backplane 138 may be suspended in the rear of stall portion122 at an angle of suspension θ₂. As illustrated in FIG. 11A, beforedairy cow enters milking box 120, feed bowl 130 may be in amaximum-retracted position and backplane 138's angle of suspension θ₂may be at a maximum such that a contact surface 350 of backplane 138extends toward the front of milking box 120. As an example, in someembodiments, the maximum angle of suspension θ₂ may be betweenapproximately 5 to approximately 30 degrees.

As described above, when the dairy cow enters milking box 120,identification sensor 136 may read an RF identifier from the dairy cow'scollar tag (or any other suitable identifier) and communicate theidentifier to controller 200. Controller 200 may retrieve informationassociated with dairy cow's identifier from memory module 240. Theinformation may include the type of feed that the dairy cow should eatand the size of the dairy cow. Controller 200 may instruct feed bowl 130to dispense the type of feed and to move toward a maximum-extendedposition determined based on the size of the dairy cow. Accordingly, themaximum-extended position selected for a smaller cow may place feed bowl130 closer to the rear of stall portion 122 than the maximum-extendedposition selected for a larger cow.

As feed bowl 130 extends toward the dairy cow, the dairy cow may backtoward backplane 138 and eventually make contact with contact surface350 of backplane 138. In response to pressure applied to contact surface350, backplane 138 may move toward the rear of milking box 120. Asillustrated in FIG. 11B, moving backplane 138 toward the rear of milkingbox 120 may cause the angle of suspension θ₂ to decrease.

Controller 200 may track the position of backplane 138 as backplane 138moves toward the rear of milking box 120. For example, FIG. 11Cillustrates an embodiment in which backplane 138 is coupled to anactuator 352, such as a pneumatic cylinder. The length of the cylindermay correspond to backplane 138's current angle of suspension θ₂.Actuator 352 may be associated with an encoder 354 that communicatessignals to controller 200 indicating the length of the cylinder.Controller 200 may use the length of the cylinder and calibrationinformation to determine the position of backplane 138. If controller200 determines that the dairy cow has moved a sufficient distance towardthe rear of milking box 120 (e.g., based on the position of backplane138), controller 200 may communicate a signal instructing feed bowl 130to stop moving toward the dairy cow.

In some embodiments, actuator 352 may apply a substantially constantpressure to extend backplane 138 toward the front of milking box 120.Actuator 352 applies pressure low enough to yield to the dairy cow suchthat the angle of suspension θ₂ decreases when the dairy cow backs intocontact surface 350. Actuator 352 applies pressure high enough to extendbackplane 138 toward the front of milking box 120 (e.g., increase theangle of suspension θ₂) when pressure is removed from contact surface350. Thus, if the dairy cow moves slightly forward, contact surface 350of backplane 138 maintains contact with the rear of the dairy cow. Ifthe dairy cow exits milking box 120, the pressure applied by actuator352 causes backplane to extend to the default position (e.g., maximumangle of suspension θ₂).

Controller 200 may communicate signals to position robotic attacher 150based on the position of backplane 138. For example, controller 200 maydetermine an x-offset based at least in part upon the position ofbackplane 138. The x-offset may indicate how far forward to extendsupplemental arm 154 in the x-direction in order to reach the teats ofthe dairy cow. Thus, the x-offset may increase as the angle ofsuspension θ₂ increases (indicating the dairy cow has moved toward thefront of milking box 120). The x-offset may decrease as the angle ofsuspension θ₂ decreases (indicating the dairy cow has moved toward therear of milking box 120). In some embodiments, controller 200 may useadditional information to determine the x-offset, such as the relativepositions of the teats of the particular dairy cow, which may bedetermined from stored information associated with the dairy cow'sidentifier.

FIG. 11D illustrates a perspective view of backplane 138, according tocertain embodiments. Backplane 138 includes a manure gutter 356. Manuregutter 356 may include one or more guide plates 358. The guide platesmay generally be angled downward toward an outlet that guides manure andother waste toward a waste area. The waste area may be located outsideof milking box 120 and proximate to one of the sidewalls 124 b or 124 d(e.g., away from the milking equipment in equipment portion 128). Insome embodiments, manure gutter 356 includes a flushing system forwashing away the waste.

FIGS. 12A-12B illustrate an example of storage areas 164 withinequipment portion 128 of milking box 120. As described above, during thetime between milking cycles, extendable/retractable hoses may suspendpreparation cup(s) 166 and teat cup(s) 168 within their correspondingstorage areas 164. Each storage area 164 may include a cup holder base360 and one or more cup holders 362. Cup holder base 360 may include oneor more apertures, each aperture adapted to hold the base of a cup(e.g., preparation cup 166 or teat cup 168). Each cup holder 362 maycorrespond to one of the cups and may include a rimmed structure 364adapted to hold the attachment end 368 of the cup within rimmedstructure 364. Cup holder 362 may also include a nozzle 366 thatsubstantially aligns with an opening of the cup stored in cup holder362. Nozzle 366 may be coupled to a cleansing hose and may facilitatebackwashing the cup, as further described in FIG. 14A below.

In some embodiments, one or more cup holders 362 may be coupled to a cupholder bracket 370. As an example, equipment portion 128 may include afirst cup holder bracket 370 a comprising two teat cup holders 362 a ₁,362 a ₂ and a second cup holder bracket 370 b comprising two teat cupholders 362 b ₁, 362 b ₂. In some embodiments, first cup holder bracket370 a may be positioned toward the front of equipment portion 128 in thex-direction (e.g., proximate to stall portion 122) and in a middle partof equipment portion 128 in the z-direction. First cup holder bracket370 a may hold the teat cups 168 to be attached to the front teats ofthe dairy cow. Second cup holder bracket 370 b may be positioned behindfirst cup holder bracket 370 a. Second cup holder bracket 370 b may holdthe teat cups 168 to be attached to the rear teats of the dairy cow.

Cup holder bracket 370 may open to facilitate retrieval of teat cup 168by robotic attacher 150 and close to store teat cup 168. For example,cup holder bracket 370 may include a hinge 372 that allows cup holderbracket 370 to move between opened and closed positions in response tosignals from controller 200. FIG. 12A illustrates an example in whichfirst cup holder bracket 370 a is opened and second cup holder bracket370 b is closed. The open cup holder bracket 370 a may have asubstantially vertical orientation with teat cups 168 released from teatcup holders 362 a ₁, 362 a ₂. The closed cup holder bracket 370 b mayhave a substantially horizontal orientation with each teat cup holder362 b ₁, 362 b ₂ aligned such that rimmed structure 364 holds acorresponding teat cup 168.

In some embodiments, preparation cup holder 362 c may be coupled to amovable arm 374 that facilitates opening and closing preparation cupholder 362 c. FIG. 12A illustrates an example of preparation cup holder362 c in a closed position.

Each preparation cup 166 may be stored in storage area 164 in an upsidedown orientation, suspended from an extendable/retractable preparationhose 376. Similarly, each teat cup 168 may be stored in storage area 164in an upside down orientation, suspended from an extendable/retractablemilking hose 378. To retrieve a cup, gripping portion 156 of roboticattacher 150 may be oriented with camera 158 b on bottom and nozzle 182on top. FIG. 12A illustrates an example of retrieving teat cup 168 fromstorage area 164. After retrieving teat cup 168, robotic attacher 150may rotate gripping portion 156 such that camera 158 b is on top, nozzle182 is on bottom, and teat cup 168 has an upright orientation, asillustrated in FIG. 12B.

Robotic attacher 150 may move the teat cup 168 from a first location,such as storage area 164, to a second location, such as the teat of thedairy cow. In some embodiments, teat cup 168 may be returned to thefirst location without requiring robotic attacher 150 to pick up teatcup 168. For example, after robotic attacher 150 releases teat cup 168,a hose lift assembly may retract milking hose 378.

FIG. 13 illustrates an example of a hose lift assembly comprising anactuator 380, one or more belts 382, and one or more rollers 384.Actuator 380 may retract belt(s) 382 coupled to milking hose 378 inresponse to a signal from controller 200. For example, controller maydetermine to release teat cup 168 from the teat and retract milking hose378 corresponding to teat cup 168 when the milk flow rate from the teatfalls below a threshold. Belt(s) 382 and/or hose 378 may be guided byrollers 384 as hose 378 is pulled into a retracted position for storage.In some embodiments, actuator 380 comprises a pneumatic cylinderpositioned above stall portion 122 and oriented in the x-direction. Insome embodiments, milking box 120 includes five hose lift assemblies,one assembly for retracting milking hoses 378 a-d coupled to each offour teat cups 168 and one assembly for retracting preparation hose 376coupled to preparation cup 166.

FIG. 14A illustrates an example of cleansing system for cleaning milkingequipment associated with milking box 120. As described with respect toFIG. 12A, the cleansing system may inject a cleanser through nozzle 366of cup holder 362 in order to backwash a cup (e.g., preparation cup 166or teat cup 168) and equipment connected between the cup and an opendrain.

The cleansing system may include a plurality of cleanser sources 400,such as a detergent source 400 a, a cold water source 400 b, a warmwater source 400 c, a steam source 400 d, and an air source 400 e.Detergent source 400 a may include a mixer 404 that receives hot waterfrom a boiler 402 and mixes the hot water with one or more chemicals,such as chlorine, concentrated detergent, and/or other chemicals.

A cleansing hose system connects cleanser sources 400 to nozzles 366.Cleansing hose system may comprise one or more of cleansing hoses 406,preparation system valves 408, milk collecting system valves 410, andconnectors 418. In some embodiments, each cleanser source 400corresponds to one preparation system valve 408 and one milk collectingsystem valve 410. When preparation system valve 408 opens, cleansersource 400 dispenses cleanser through the cleansing hose system tonozzle 366 aligned with an opening of preparation cup 166 in order tobackwash at least a portion of the preparation system. When the milkcollecting system valve 410 opens, cleanser source 400 dispensescleanser through the cleansing hose system to nozzle 366 aligned with anopening of teat cup 168 in order to backwash at least a portion of themilk collecting system. The valve system (e.g., valves 408 and 410)facilitates cleansing the preparation system and the milk collectingsystem independently of one another.

The cleansing system may cleanse preparation cup 166 in response tosignals communicated by controller 200. In some embodiments, controller200 initiates cleansing preparation cup 166 based on a pre-determinedtime interval and/or upon a determination that a preparation cycle hascompleted. Controller 200 may determine that a preparation cycle hascompleted based on any suitable indicator, such as an indicator thatpreparation cup 166 has been returned to preparation cup holder 362 c oran indicator that a milking cycle has completed (and therefore, thepreparation cycle preceding the milking cycle has also completed).

To cleanse preparation cup 166, controller 200 selects a cleanser source400 (e.g., detergent, cold water, warm water, steam, and/or air) andcommunicates instructions to open preparation system valve 408corresponding to the selected cleanser source 400. Cleanser may thenflow from the cleanser source 400 through cleansing hoses 406 and cupholder nozzle 366 e. Nozzle 366 e may inject the cleanser intopreparation cup 166 in order to backwash preparation cup 166 andequipment connected between preparation cup 166 and an open drain 416 a.For example, the cleanser may backwash a pre-milk container 412 andpreparation hoses 376 connected between preparation cup 166 and pre-milkcontainer 412. Controller 200 may communicate instructions to open adrain valve 414 a corresponding to drain 416 a of pre-milk container 412in order to dispose of the cleanser. In some embodiments, controller 200communicates instructions to close preparation system valve 408 anddrain valve 414 a after a pre-determined amount of cleansing time.

The cleansing system may cleanse teat cups 168 in response to signalscommunicated by controller 200. In some embodiments, controller 200initiates cleansing teat cups 168 based on a pre-determined timeinterval and/or upon a determination that a milking cycle has completed.Controller 200 selects a cleanser source 400 (e.g., detergent, coldwater, warm water, steam, and/or air) and communicates instructions toopen milk collecting system valve 410 corresponding to the selectedcleanser source 400. Cleanser may then flow from the cleanser source 400through cleansing hoses 406 and connector 418.

FIG. 14B illustrates an example of connector 418. In some embodiments,connector 418 includes a plurality of inlets 420, a connecting portion422, and a plurality of outlets 424. Each inlet 420 may correspond toone of the cleanser sources 400. For example, a first inlet 420 a maycorrespond to detergent source 400 a, a second inlet 420 b maycorrespond to cold water source 400 b, a third inlet 420 c maycorrespond to warm water source 400 c, a fourth inlet 400 d maycorrespond to steam source 400 d, and/or a fifth inlet 400 e maycorrespond to air source 400 e. Connecting portion 422 connects inlets400 a-e to a single chamber. The single chamber splices into theplurality of outlets 424, and each outlet corresponds to one of thenozzles 366 a-d that injects cleanser into one of the teat cups 168.Thus, connector 418 facilitates injecting a cleanser from one cleansersource 400 into all of the teat cups 168 at substantially the same time.

Returning to FIG. 14A, nozzles 366 a-d may inject the cleanser into teatcups 168 in order to backwash teat cups 168 and milking equipmentconnected between teat cups 168 and an open drain 416. In someembodiments, controller 200 communicates instructions to close milkcollecting system valve 410 and a drain valve 414 corresponding to theopen drain 416 after a pre-determined amount of cleansing time.

In some embodiments, milk collecting system may include multiple drainvalves 414 each operable to open and close one of multiple drains 416positioned at various points within the milk collecting system.Accordingly, controller 200 may initiate different types of cleaningmodes, such as a short cleaning and a main cleaning, by selecting whichdrain valve 414 to open.

As an example, controller 200 may determine to perform a short cleaningupon determining the completion of a milking cycle (e.g., in someembodiments, a short cleaning may be performed each time the milkcollecting system finishes milking one of the dairy cows). Controller200 may select a cleanser to dispense during the short cleaning, such assteam, cold water, and/or warm water. Controller 200 may thencommunicate signals with instructions to open the milk collecting systemvalve 410 corresponding to the cleanser source 400 that dispenses theselected cleanser. During the short cleaning procedure, controller 200may communicate instructions to open a drain valve 414 b correspondingto a drain 414 b selected for the short cleaning. As an example, drain414 b may be positioned between teat cup 168 and a milk collector 430.Thus, during the short cleaning, the cleanser may backwash teat cup 168and milking hoses 378 connected between teat cup 168 and drain 414 b,but may not clean milk collector 430.

As another example, controller 200 may determine to perform a maincleaning upon determining a pre-determined time interval. The timeinterval may refer to a time of day, such as 9:00 AM, 1:00 PM, 4:00 PM,or other suitable time. Alternatively, the time interval may refer to anamount of time that has elapsed since the last main cleaning, such as 4hours, 8 hours, 12 hours, or other suitable time period. In someembodiments, the time interval may be selected to facilitate maincleaning at least twice per day, such as at least three times per day.Controller 200 may select a cleanser to dispense during the maincleaning, such as detergent. Controller 200 may then communicate signalswith instructions to open the milk collecting system valve 410corresponding to the cleanser source 400 that dispenses the selectedcleanser. During the main cleaning procedure, controller 200 maycommunicate instructions to close drain valve 414 b and open a drainvalve 414 c corresponding to a drain 414 c selected for the maincleaning. As an example, drain 414 c may be positioned after milkcollector 430. Thus, during the main cleaning, the cleanser may backwashteat cup 168, milking hoses 378, milk collector 430, and any otherequipment positioned between teat cup 168 and drain 414 c, such as milkmeter 426 and overflow container 428.

Modifications, additions, or omissions may be made to the systemsdescribed herein without departing from the scope of the invention. Thecomponents may be integrated or separated. Moreover, the operations maybe performed by more, fewer, or other components. Additionally, theoperations may be performed using any suitable logic comprisingsoftware, hardware, and/or other logic. As used in this document, “each”refers to each member of a set or each member of a subset of a set.

Modifications, additions, or omissions may be made to the methodsdescribed herein without departing from the scope of the invention. Forexample, the steps may be combined, modified, or deleted whereappropriate, and additional steps may be added. Additionally, the stepsmay be performed in any suitable order without departing from the scopeof the present disclosure.

Although the present invention has been described with severalembodiments, diverse changes, substitutions, variations, alterations,and modifications may be suggested to one skilled in the art, and it isintended that the invention encompass all such changes, substitutions,variations, alterations, and modifications as fall within the spirit andscope of the appended claims.

1. A robotic attacher, comprising: a main arm; a supplemental armcoupled to the main arm, the supplemental arm comprising a wrist and agripping portion coupled to the wrist; a first actuator operable to movethe main arm in an x-direction; a second actuator operable to move themain arm in a y-direction; a third actuator operable to move the mainarm in a first z-direction and a second z-direction, the secondz-direction opposite the first z-direction; a fourth actuator operableto pivot the gripping portion in the first z-direction; a fifth actuatoroperable to pivot the gripping portion in the second z-direction; and acontroller operable to communicate one or more signals to adjust theactuators in order to position the main arm and the supplemental arm. 2.The robotic attacher of claim 1, wherein: the gripping portion comprisesa gripping claw; and the controller is further operable to determine alocation of the gripping claw based at least in part upon calibrationinformation that associates the configuration of the actuators with theposition of the gripping claw.
 3. The robotic attacher of claim 2,further comprising: a first rotary encoder operable to track movementsmade by the first actuator; a second rotary encoder operable to trackmovements made by the second actuator; and a third rotary encoderoperable to track movements made by the third actuator; wherein thecontroller uses signals received from the first, second, and thirdrotary encoders to determine the position of the main arm.
 4. Therobotic attacher of claim 3, wherein: the controller determines thecalibration information associating the fourth actuator with amaximum-left offset when the fourth actuator is configured to pivot thegripping portion to the left; and the controller determines thecalibration information associating the fifth actuator with amaximum-right offset when the fifth actuator is configured to pivot thegripping portion to the right.
 5. A milking box, comprising: a roboticattacher operable to position milking equipment between the hind legs ofa dairy livestock, the robotic attacher comprising: a main arm suspendedfrom a rail positioned to the rear of a stall portion of the milkingbox; a supplemental arm coupled to the main arm; a first actuatoroperable to move the main arm in an x-direction; a second actuatoroperable to move the main arm in a y-direction; a third actuatoroperable to move the main arm in a z-direction; and a controlleroperable to communicate one or more signals to adjust the first, second,and third actuators in order to position the main arm.
 6. The milkingbox of claim 5, further comprising an x-bar assembly, wherein: the x-barassembly is positioned in a top portion of the milking box; the x-barassembly is oriented in the x-direction; and the first actuator iscoupled to the x-bar assembly.
 7. The milking box of claim 6, furthercomprising: a first sidewall; a second sidewall; and a support beamextending between the top of the first sidewall and the top of thesecond sidewall; wherein the x-bar assembly is coupled to the supportbeam.
 8. The milking box of claim 6, further comprising: an equipmentportion positioned to the rear of the stall portion; a first track thattraverses the top of a first sidewall of the equipment portion; and asecond track that traverses the top of a second sidewall of theequipment portion; wherein: the rail that suspends the main arm extendsbetween the first track and the second track; and the x-bar assemblycouples to the rail such that extending and retracting the x-barassembly causes the rail to move back and forth along the first andsecond tracks.
 9. The milking box of claim 5, further comprising: anx-encoder corresponding to the first actuator and operable to track anx-measurement of movement and communicate the x-measurement to thecontroller; wherein the controller is operable to determine a currentposition of the main arm in the x-direction based at least in part uponthe x-measurement.
 10. The milking box of claim 9, wherein thecontroller is further operable to determine a current position of thesupplemental arm in the x-direction based at least in part upon thecurrent position of the main arm in the x-direction and calibrationinformation.
 11. The milking box of claim 9, wherein: the x-encodercomprises a rotary encoder and the x-measurement indicates an amount ofrotation of the rotary encoder; and the controller determines an amountof linear movement of the main arm based at least in part upon theamount of rotation of the rotary encoder.
 12. The milking box of claim5, wherein: the main arm comprises: a frame portion that couples themain arm to the rail; an extendable portion that couples the main arm tothe supplemental arm; and a y-cable coupled to the frame portion and theextendable portion; and the second actuator extends and retracts they-cable in order to extend and retract the extendable portion of themain arm in the y-direction.
 13. The milking box of claim 12, furthercomprising: a y-encoder corresponding to the second actuator andoperable to track a y-measurement and communicate the y-measurement tothe controller; wherein the controller is operable to determine acurrent position of the main arm in the y-direction based at least inpart upon the y-measurement.
 14. The milking box of claim 5, wherein:the rail is oriented in the z-direction and the third actuator iscoupled to the rail; the third actuator corresponds to a z-encoder, thez-encoder operable to track a z-measurement and communicate thez-measurement to the controller; and the controller is operable todetermine a current position of the main arm in the z-direction based atleast in part upon the z-measurement.
 15. A system, comprising: arobotic attacher comprising a controller and a supplemental arm, thesupplemental arm comprising a wrist, a gripping portion coupled to thewrist, and a pivot assembly comprising: a first actuator operable topivot the gripping portion to the left by retracting a first cablecoupled to the left side of the gripping portion; and a second actuatoroperable to pivot the gripping portion to the right by retracting asecond cable coupled to the right side of the gripping portion.
 16. Thesystem of claim 15, wherein: retracting the first cable pivots thegripping portion to a maximum-left position; retracting the second cablepivots the gripping portion to a maximum-right position; and thecontroller maintains calibration information corresponding to themaximum-left and maximum-right positions.
 17. The system of claim 16,the pivot assembly further comprising; a first adjusting nut coupled tothe first cable, wherein adjusting the first adjusting nut causes themaximum-left position to increase or decrease; and a second adjustingnut coupled to the second cable, wherein adjusting the second adjustingnut causes the maximum-right position to increase or decrease.
 18. Thesystem of claim 15, wherein the pivot assembly further comprises acentering assembly operable to center the gripping portion by retractingthe first and second cables.
 19. The system of claim 18, wherein: thefirst actuator comprises a first cylinder; the second actuator comprisesa second cylinder; and the centering assembly comprises a centeringcylinder and a pivot plate, the centering cylinder operable to cause thepivot plate to apply pressure to the first and second cylinders.
 20. Thesystem of claim 19, wherein the pressure applied to the first and secondcylinder is substantially even.